<script>
	/*
            伪数组其实就是一个js对象,他的属性名是下标
        */
	var length = 4;
	var obj = {
		length: 5,
		fn: function () {
			return this.length;
		},
	};

	(function (length = 6) {
		var length = 7;
		// console.log(arguments)
		console.log(arguments[0]());
	})(obj.fn);

	// 答案1，解析：
	// var length = 4;
	// var obj = {
	//     length:5,
	//     fn:0x001
	// };
	// (function(length = 6){
	//     var length = 7;
	//     console.log(length)
	//     // 对象读取属性的两种写法
	//     // obj.fn obj["fn"]
	//     // arguments是一个用于收集当前函数接收到的所有实参组成的伪数组
	//     // arguments中会存储多少数据,与形参没有任何关系
	//     // console.log(arguments[0]());
	//     // console.log(arguments.0());
	//     console.log([0x001][0]());
	// })(0x001);

	// var a = 1;
	// var b = a;
	// var obj ={
	//     c:a
	// }
	// a=2;
	// b=2;
	// console.log(b,obj.c)

	// function c(){
	//     console.log(this)
	// }
	// var  arr = [c,1,2,3,4];
	// // arr.0();
	// arr[0]();
</script>
